We can use projectRaster() to transform the CRS of one spatial object to match another spatial object
alt_crop
## class : RasterLayer
## dimensions : 40, 60, 2400 (nrow, ncol, ncell)
## resolution : 0.008333333, 0.008333333 (x, y)
## extent : -73.975, -73.475, 45.4, 45.73333 (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
## data source : in memory
## names : CAN_msk_alt
## values : 0, 179 (min, max)
alt_proj <- projectRaster(alt_crop, crs = st_crs(LU_val)[[2]])
alt_proj
## class : RasterLayer
## dimensions : 48, 72, 3456 (nrow, ncol, ncell)
## resolution : 650, 926 (x, y)
## extent : 263713, 310513, 5025305, 5069753 (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=tmerc +lat_0=0 +lon_0=-73.5 +k=0.9999 +x_0=304800 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
## data source : in memory
## names : CAN_msk_alt
## values : 0.9513865, 173.2387 (min, max)